package com.cloudkinto.service.role;

import com.baomidou.mybatisplus.extension.service.IService;
import com.cloudkinto.common.web.PageResult;
import com.cloudkinto.common.web.SingleResult;
import com.cloudkinto.entity.MenuDo;
import com.cloudkinto.vo.role.menu.MenuAddReq;
import com.cloudkinto.vo.role.menu.MenuDetailRes;
import com.cloudkinto.vo.role.menu.MenuTreeRes;
import com.cloudkinto.vo.role.menu.MenuUpdateReq;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * service接口
 * </p>
 *
 * @author 张永远
 * @since 2020-05-29
 */
public interface MenuService extends IService<MenuDo> {

    SingleResult addInit();

    MenuAddReq add(MenuAddReq req, Long userId);

    SingleResult updateInit(Long id);

    MenuUpdateReq update(MenuUpdateReq updateVo, Long userId);

    int delete(Long id, Long userId);

    MenuDetailRes detail(Long id);

    SingleResult pageInit();

    PageResult getListPage(Map<String, String> map);

    List<MenuTreeRes> menuTree();
}
